<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
DRA Systems: OR-Objects 1.2.4: Interface  PriorityQueueI
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PriorityQueueI.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
drasys.or.cont</FONT>
<BR>
Interface  PriorityQueueI</H2>
<DL>
<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../drasys/or/cont/BinaryHeap.html">BinaryHeap</A>, <A HREF="../../../drasys/or/cont/BinomialHeap.html">BinomialHeap</A></DD>
</DL>
<HR>
<DL>
<DT>public interface <B>PriorityQueueI</B></DL>

<P>
An interface used by all algorithms to use priority queues.
<P>
<DL>
<DT><B>See Also: </B><DD><A HREF="../../../drasys/or/cont/BinaryHeap.html"><CODE>BinaryHeap</CODE></A>, 
<A HREF="../../../drasys/or/cont/BinomialHeap.html"><CODE>BinomialHeap</CODE></A>, 
<A HREF="../../../drasys/or/cont/PriorityQueue.html"><CODE>PriorityQueue</CODE></A></DL>
<HR>

<P>
<!-- ======== INNER CLASS SUMMARY ======== -->


<!-- =========== FIELD SUMMARY =========== -->


<!-- ======== CONSTRUCTOR SUMMARY ======== -->


<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#changePriority(drasys.or.PairI, java.lang.Object)">changePriority</A></B>(<A HREF="../../../drasys/or/PairI.html">PairI</A>&nbsp;element,
               java.lang.Object&nbsp;priority)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Change the priority of a element in the queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#check()">check</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Check the integrity of the internal data structures.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Enumeration</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#elements()">elements</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get an enumerator to access all the elements in random order.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#ensureCapacity(int)">ensureCapacity</A></B>(int&nbsp;capacity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Ensure that the queue can hold this many elements.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/PairI.html">PairI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#getHead()">getHead</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Access the next element in the queue and leave the entry in the queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/PairI.html">PairI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#insert(java.lang.Object, java.lang.Object)">insert</A></B>(java.lang.Object&nbsp;priority,
       java.lang.Object&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a new element into the queue, with separate priority and value objects.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/PairI.html">PairI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#popHead()">popHead</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Access the next element in the queue and remove the entry from the queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#removeAllElements()">removeAllElements</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Remove all elements from the queue.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#setCompare(drasys.or.CompareI)">setCompare</A></B>(<A HREF="../../../drasys/or/CompareI.html">CompareI</A>&nbsp;compare)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets a new comparison function.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/cont/PriorityQueueI.html#size()">size</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->


<!-- ========= CONSTRUCTOR DETAIL ======== -->


<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="size()"><!-- --></A><H3>
size</H3>
<PRE>
public int <B>size</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Returns:</B><DD>The number of elements in the queue.</DL>
</DD>
</DL>
<HR>

<A NAME="removeAllElements()"><!-- --></A><H3>
removeAllElements</H3>
<PRE>
public void <B>removeAllElements</B>()</PRE>
<DL>
<DD>Remove all elements from the queue.</DL>
<HR>

<A NAME="ensureCapacity(int)"><!-- --></A><H3>
ensureCapacity</H3>
<PRE>
public void <B>ensureCapacity</B>(int&nbsp;capacity)</PRE>
<DL>
<DD>Ensure that the queue can hold this many elements.</DL>
<HR>

<A NAME="elements()"><!-- --></A><H3>
elements</H3>
<PRE>
public java.util.Enumeration <B>elements</B>()</PRE>
<DL>
<DD>Get an enumerator to access all the elements in random order.<DD><DL>
<DT><B>Returns:</B><DD>The enumeration object retrieves the queue elements in random order
and presents them as PairI interfaces.
In the PairI, the first element is the priority object
and the second element is the value object.</DL>
</DD>
</DL>
<HR>

<A NAME="check()"><!-- --></A><H3>
check</H3>
<PRE>
public boolean <B>check</B>()</PRE>
<DL>
<DD>Check the integrity of the internal data structures.<DD><DL>
<DT><B>Throws:</B><DD>CorruptedException - If the internal data structure is corrupted.</DL>
</DD>
</DL>
<HR>

<A NAME="changePriority(drasys.or.PairI, java.lang.Object)"><!-- --></A><H3>
changePriority</H3>
<PRE>
public void <B>changePriority</B>(<A HREF="../../../drasys/or/PairI.html">PairI</A>&nbsp;element,
                           java.lang.Object&nbsp;priority)
                    throws <A HREF="../../../drasys/or/InvalidPriorityException.html">InvalidPriorityException</A></PRE>
<DL>
<DD>Change the priority of a element in the queue.<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../drasys/or/InvalidPriorityException.html">InvalidPriorityException</A> - If the new priority is not supported.</DL>
</DD>
</DL>
<HR>

<A NAME="getHead()"><!-- --></A><H3>
getHead</H3>
<PRE>
public <A HREF="../../../drasys/or/PairI.html">PairI</A> <B>getHead</B>()</PRE>
<DL>
<DD>Access the next element in the queue and leave the entry in the queue.<DD><DL>
<DT><B>Returns:</B><DD>A PairI interface where the first element contains the priority object and the second contains the value object.</DL>
</DD>
</DL>
<HR>

<A NAME="popHead()"><!-- --></A><H3>
popHead</H3>
<PRE>
public <A HREF="../../../drasys/or/PairI.html">PairI</A> <B>popHead</B>()</PRE>
<DL>
<DD>Access the next element in the queue and remove the entry from the queue.<DD><DL>
<DT><B>Returns:</B><DD>A PairI interface where the first element contains the priority object and the second contains the value object.</DL>
</DD>
</DL>
<HR>

<A NAME="insert(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
insert</H3>
<PRE>
public <A HREF="../../../drasys/or/PairI.html">PairI</A> <B>insert</B>(java.lang.Object&nbsp;priority,
                    java.lang.Object&nbsp;value)</PRE>
<DL>
<DD>Insert a new element into the queue, with separate priority and value objects.<DD><DL>
<DT><B>Returns:</B><DD>A PairI interface that can be used to to access the new queue element.</DL>
</DD>
</DL>
<HR>

<A NAME="setCompare(drasys.or.CompareI)"><!-- --></A><H3>
setCompare</H3>
<PRE>
public void <B>setCompare</B>(<A HREF="../../../drasys/or/CompareI.html">CompareI</A>&nbsp;compare)</PRE>
<DL>
<DD>Sets a new comparison function.
This will empty the queue if it contains any objects.</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PriorityQueueI.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
Copyright(C)1997-2000 by DRA Systems all rights reserved. <A HREF=http://OpsResearch.com TARGET=HOME>OpsResearch.com</A>
</BODY>
</HTML>
